Vehicle engines are continuously designed with more accuracy and precision as the demand for higher efficiency and performance in vehicles increase. The accuracy and precision in engines and transmissions may be indicative of the number of parameters controlled by a vehicle's powertrain control module. Typically, the control module regulates and feeds data to engine and transmission systems of the vehicle. The operation of the control module affects some systems within the vehicle which, in turn, affects the overall efficiency and performance of the vehicle. As more engine parameters are controlled by the control module, the more engine related calculations and functions are required in order to run the vehicle in accordance with its design specifications. For example, a parameter may include determining the optimum engine air charge which involves gathering data and performing air charge calculations to establish the vehicle design specification.
The control module typically employs an operating system which is programmed to execute at least two levels of tasks, high priority and low priority tasks, based on engine speed or time. High priority tasks may be referred to as foreground tasks, and low priority tasks may be referred to as background tasks. A set of foreground tasks are executed during separate periods called foreground periods. A foreground period is a period during which the execution of a set of foreground tasks are begun and completed. Thus, the execution of a set of foreground tasks start and end during one foreground period. During a foreground period, background tasks are executed once the execution of the respective set of foreground tasks are completed.
Generally, background tasks are continuously and repeatedly executed by the control module until a piston event triggers the foreground tasks to be executed. Thus, a piston event may define the end of a previous foreground period and the beginning of a following foreground period. A cylinder or piston event may occur during one cycle of each of the pistons of the engine, such as ignition or intake. Tasks with lower priority are executed only when foreground tasks have been completed. A task may be a preprogrammed command strategy which, when accessed from memory, directs the control module to perform specific functions and subroutines in order to operate the engine at design specifications.
As engine speeds increase, piston events take place more frequently which, in turn, demand more frequent foreground tasks to be executed. The more frequently foreground tasks are executed, the more chronometric load is placed on the operating system of the control module. Chronometric load may be the measure of resources used within a control module. Thus, at increased engine speeds, more resources of the control module are used to execute high priority (or foreground) tasks and less resources are used to execute low priority (or background) tasks than at lower engine speeds. Consequently, the elapsed time between the execution of background tasks are progressively longer as engines are operated at higher speeds. Additionally, the more cylinders one engine has leads to more foreground calculations the control module employs, resulting in more severe chronometric impacts experienced.
The decrease of resources used to execute lower priority tasks at higher engine speeds may provide some systems within the vehicle to experience adverse effects. For example, transmission shifting quality of some vehicles may be lowered. The combination of (1) more frequently occurring piston events per increased engine speed, and (2) increased foreground calculations at increased engine speeds results in a relatively long background calculation time. As a result, low or fair transmission shifting quality may be experienced.
Thus, what is needed is an improvement to the operation of powertrain control modules. Particularly, an improvement is needed in reducing the chronometric load of the operating system of the control module.
Also, what is needed is a system and method for reducing the foreground tasks executed at higher speeds and reducing the rate at which the foreground tasks are executed in order to reduce the chronometric load of the control module.